home *** CD-ROM | disk | FTP | other *** search
-
- Consiste en una memoria de acceso muy rápido, intercalado
- entre el procesador y la memoria propiamente dicha. En la
- memoria caché se almacenan datos con gran probabilidad de ser
- leídos.
-
- Se las puede considerar como un veloz buffer entre cualquier
- medio de almacenamiento de datos y el destino de los datos,
- ya sea el procesador u otro dispositivo.
- Esto acorta el tiempo de lectura de los datos del dispositivo
- más rápido.
-
- Este tipo de cachés deben disponer de un software que les
- permita decidir cuales son los datos que debe contener, de
- forma que cuando le sean pedidos obtenga una gran
- probabilidad de acertar, ahorrando el tiempo de leerlos.
-
- El contenido de la caché debe ser capaz de adaptarse a los
- datos que hay en el dispositivo al que sirve de caché, de
- forma que si estos datos cambian la caché no proporcione los
- datos antiguos, sino los nuevos.
- Por ejemplo imaginémonos dos programas trabajando al mismo
- tiempo en un ordenador, uno lee un fichero, la caché carga
- los datos ante la posibilidad de que puedan ser utilizados,
- el primer programa acaba de procesar los datos del fichero,
- los actualiza y los graba, el segundo programa accede al
- mismo programa, la caché se da cuenta de que tiene los datos
- y se los manda, ahorrándose así el tiempo de leerlos, pero le
- ha mandado los datos antes de que estuviesen procesados por
- el primer programa, lo que es un gran fallo.
-
- La forma más antigua de caché en el ▒PC▓ es el caché de disco,
- por el cual un área de RAM se usa para colocar los datos
- extraídos del disco duro. Después se buscará en el caché
- para ver si los datos están en el, y en caso contrario
- copiaría toda la pista que contiene el nuevo sector dentro
- del caché.
- Cuando este caché está lleno un algoritmo se encarga de
- elegir que pistas eliminar. Este algoritmo suelen basarse en
- eliminar la pista a la que hacía más tiempo que no se accedía
- ó eliminar aquella a la que se accedía menos a menudo.
- Los programas software de caché de disco suelen utilizar
- estos sistemas.
-
- Hay controladores de disco que ya llevan implementado un
- sistema de caché de varios megas en la propia controladora,
- con lo que al ser procesado por el hardware de la
- controladora se gana tiempo, y al tener su propia memoria se
- ahorra RAM principal.
- Pueden basarse en el antiguo sistema de leer una pista
- completa cuando se les solicita un sector, y así si después
- se le siguen solicitando los siguientes los tendrá en
- memoria, eliminando el tiempo necesario para leerlos, o
- alguno de las nuevas rutinas inteligentes de prebúsqueda, que
- recuperan datos del disco duro incluso antes de que le sean
- pedidos.
-
- Para la escritura también se puede usar una caché que recoja
- los datos a escribir, dejando al procesador que continúe
- trabajando mientras la controladora los escribe. En estos
- sistemas hay que tener la precaución de dejar suficiente
- tiempo a la controladora como para escribir los datos antes
- de resetear el sistema o de apagarlo, pues se podrían perder
- los datos.
-
- La llegada de los ordenadores 386 supuso la imposibilidad de
- que las memorias pudiesen hacer frente a la velocidad del
- procesador, así que el procesador tenía que esperar hasta que
- un datos quedase completamente almacenado en la RAM para
- seguir trabajando, lo que lo hacía perder gran cantidad de
- tiempo.
-
- Para solucionar este problemas se crearon unas áreas de
- almacenamiento caché entre el procesador y la memoria RAM,
- que almacenaba los datos que el procesador necesitaba más a
- menudo, y se encargaba de recogerlos para su escritura.
-
- Así cuando se pide un dato, es necesario comprobar si está en
- el caché o ha de ser leído de la RAM, evitando leer datos que
- no han sido actualizados y aumentando la velocidad de
- lectura. Para realizar esta comprobación hay tres sistemas,
- el asociativo, el de mapeado directo y el de RAM asociativa
- de grupo.
-
- -Caché asociativo: la RAM del caché mantiene los
- contenidos de las últimas localizaciones N de la
- memoria a las que se ha accedido, donde N es el tamaño
- de caché.
- Cualquier localización del caché puede ser asociada a
- la memoria principal, y el controlador del caché tiene
- que buscar cada localización del caché para descubrir
- aciertos o pérdidas.
-
- -Caché de mapeado directo: para establecer un acierto o
- una pérdida del caché, el controlador sólo necesita
- comparar el resto de la dirección con los bits
- superiores de la dirección de la fuente de los datos en
- esa localización de caché.
- Son los más utilizados, ya que son rápidos y baratos.
-
- -Caché de RAM asociativa de grupo: ahorra gran parte del
- tiempo de búsqueda del caché mediante la división de
- las localizaciones en dos o cuatro secciones. Cada una
- de estas se asocia a un juego especial de
- localizaciones en la memoria principal, de modo que,
- dada una dirección de la memoria principal, sólo una
- fracción del caché necesita ser buscada.
-
-
- El principal problema de estas memorias caché son los accesos
- a memoria mediante ▒DMA▓, que evitan la caché, accediendo
- directamente a la memoria, para controlar esto es necesaria
- la utilización de hardware de intromisión.
- Este hardware detecta el comienzo de la transferencia DMA y
- el controlador de caché determina lo que sucederá a
- continuación. Cuando el DMA accede a la memoria, se marcan
- los datos del caché pertenecientes a las direcciones a las
- que se está accediendo como inválidas, de forma que no sean
- reescritas por el controlador de la caché.
-
- Los diseños del caché de la RAM se pueden mejorar cacheando
- los datos transferidos por DMA, de la misma manera que se
- cachea la memoria principal. Pero la mayoría de los cachés
- de la RAM de los PCs no son tan sofisticados.
-
- El procesador ▒486▓ (y también el ▒PENTIUM▓), tiene una caché
- interna de 8 Kbytes para instrucciones y otros 8 para datos.
-
- Otra caché que es muy utilizada y que muchos usuarios
- desconocen es la Shadow RAM, que consiste en copiar la ▒BIOS▓
- del sistema en la memoria RAM. De esta forma cuando se usan
- los procedimientos de la BIOS no es necesario acceder a las
- ROMs donde se encuentra instalada, que son más lentas. A
- este proceso se le llama también "sombreado".
-
- Así, a modo de resumen, se puede decir que la caché será más
- rápida en los discos cuando se acceda a los datos de forma
- secuencial (datos contiguos), mientras que el el caso de la
- RAM los accesos serán más rápidos mientras no se usen los
- canales de acceso directo a memoria (DMA).
-
-